Thomas Neff

I am a VR/Graphics/Vision/ML/Game dev with a passion for games, music and anything programming related. I'm currently a University Assistant and PhD Student at Graz University of Technology, researching modern real-time methods for VR. Check out our research projects below for more details. In my spare time, I like to develop games and modify existing ones by reverse engineering their code or dynamically patching it during runtime. Finally, I enjoy speedrunning (= completing video games as fast as possible) both as a viewer and as a casual runner, and have contributed several tools to the community.

Biography

Thomas Neff is a University Assistant and PhD Student at Graz University of Technology, Austria, teaching and researching as a part of the GPU Computing group at the Institute of Computer Graphics and Vision. He has (co-)authored several papers in the domains of real-time texture-space shading (TOG'19, TOG'21), neural rendering (CGF'21) and medical image analysis (MICCAI'18), including a best paper award (OAGM'17). His main research interests include texture-space shading and the intersection between computer graphics and deep learning to advance the state of the art of real-time rendering and streaming via novel neural rendering methods.

Publications

2017
2018
2019
2021
2022
ConferenceJournal
Search:
YearTypePublication
2022JournalNeff, Mueller, Steinberger, Schmalstieg (2022). Meshlets and How to Shade Them: A Study on Texture-Space Shading. Computer Graphics Forum, 41(2), pp. 277-287. (link) (bib) (tweet)
2022ConferenceKurz, Neff, Lv, Zollhöfer, Steinberger (2022). AdaNeRF: Adaptive Sampling for Real-time Rendering of Neural Radiance Fields. In Computer Vision – ECCV 2022, pp. 254–270, Cham. (link) (bib) (tweet)
2021JournalNeff, Stadlbauer, Parger, Kurz, Mueller, Chaitanya, Kaplanyan, Steinberger (2021). DONeRF: Towards Real-Time Rendering of Compact Neural Radiance Fields using Depth Oracle Networks. Computer Graphics Forum, 40(4). (link) (bib) (tweet)
2021JournalMueller, Neff, Voglreiter, Steinberger, Schmalstieg (2021). Temporally Adaptive Shading Reuse for Real-Time Rendering and Virtual Reality. ACM Trans. Graph., 40(2). New York, NY, USA. (link) (bib) (tweet)
2019ConferenceMueller, Neff, Voglreiter, Makar, Steinberger, Schmalstieg (2019). Shading Atlas Streaming Demonstration. In ACM SIGGRAPH 2019 Emerging Technologies, pp. 22:1–22:2, New York, NY, USA. (link) (bib) (tweet)
2018JournalMueller, Voglreiter, Dokter, Neff, Makar, Steinberger, Schmalstieg (2018). Shading Atlas Streaming. ACM Transactions on Graphics, 37(6). New York, NY, USA. (link) (bib) (tweet)
2018ConferenceMueller, Voglreiter, Dokter, Neff, Makar, Steinberger, Schmalstieg (2018). Shading Atlas Streaming Demonstration. In Adjunct Proceedings of the IEEE International Symposium for Mixed and Augmented Reality 2018. (bib)
2018ConferencePayer, Štern, Neff, Bischof, Urschler (2018). Instance segmentation and tracking with cosine embeddings and recurrent hourglass networks. In Medical Image Computing and Computer Assisted Intervention – MICCAI 2018 - 21st International Conference, 2018, Proceedings, pp. 3–11. (link) (bib) (tweet)
2018ConferenceNeff, Payer, Stern, Urschler (2018). Generative Adversarial Networks to Synthetically Augment Data for Deep Learning based Image Segmentation. In Proceedings of the OAGM Workshop 2018, pp. 22–29. (link) (bib) (tweet)
2017ConferencePayer, Neff, Bischof, Urschler, Stern (2017). Simultaneous Multi-Person Detection and Single-Person Pose Estimation With a Single Heatmap Regression Network. In ICCV 2017 PoseTrack Challenge: Human Pose Estimation and Tracking in the Wild, Venice, Italy. (pdf) (bib) (tweet)
2017ConferenceNeff, Payer, Stern, Urschler (2017). Generative Adversarial Network based Synthesis for Supervised Medical Image Segmentation. In Proceedings of the OAGM&ARW Joint Workshop, pp. 140–145. (Best Paper Award) (pdf) (bib) (tweet)
Showing 1 to 11 of 11 entries

Research Projects

DONeRF: Depth Oracle Neural Radiance Fields

By predicting discrete depth values along each ray, we can reduce the required number of samples for neural raymarching by 24-64x without sacrificing quality or compactness.

AdaNeRF: Adaptive Sampling for Real-time Rendering of Neural Radiance Fields

We use a student-teacher distillation scheme to train a sampling network for efficient rendering of raymarching-based neural radiance fields.

Temporally Adaptive Shading Reuse (TAS)

Texture-space temporal reuse of full shading information, saving more than 57% of all shader invocations in VR without noticable loss in quality.

Shading Atlas Streaming (SAS)

Efficient texture-space shading for virtual reality, allowing for high latencies compared to conventional streaming approaches.

Data Augmentation using Generative Adversarial Networks

Experiments with Wasserstein GANs to automatically generate medical image data for deep learning.

GitHub Projects

AdaNeRF (C++)
AdaNeRF: Adaptive Sampling for Real-time Rendering of Neural Radiance Fields
advent_of_code_2020 (C++)
My repository for 2020's https://adventofcode.com/ .
CrashNSaneTrilogyLoadDetector (C#)
Loading Screen Detector and Autosplitter for LiveSplit for the Crash N. Sane Trilogy.
dbz_lsw_randomizer_mods (Lua)
Some randomizer mod scripts and modding notes for Dragon Ball Z: Legendary Super Warriors [GBC]. Allows for story and battle mode randomization when using Bizhawk.
Generative-Adversarial-Network-based-Synthesis-for-Supervised-Medical-Image-Segmentation (Python)
Code for the paper 'Generative Adversarial Network based Synthesis for Supervised Medical Image Segmentation'
GreeneysRun (C)
Endless Runner for Pebble / Pebble Time.
LiveSplit.BlackScreenDetector (C#)
Fork of LiveSplit.CrashNSTLoadRemoval that is changed to detect black screens only.
LiveSplit.CaptureBasedLoadDetector (C#)
LiveSplit.Crash4LoadRemover (C#)
Vision-Based load screen detector for "Crash Bandicoot 4: It's About Time". Works as a plugin for the LiveSplit timer.
LiveSplit.CrashNSTLoadRemoval (C#)
LiveSplit component to automatically detect and remove loads from the Crash N. Sane Trilogy.
LiveSplit.CTRNitroFueledLoadRemover (C#)
Vision-Based load screen detector for "Crash Team Racing: Nitro Fueled". Works as a plugin for the LiveSplit timer.
mmbn3-draft-gauntlet (Lua)
Lua scripts and notes for modding the first Monolith Gauntlet battle in Secret Area 1 in Megaman Battle Network 3: Blue [US]. This effectively turns the game into a roguelite experience, where the core elements are folder building, customization and randomized battles and buffs. Requires BizHawk with the VBA-Next core to run the scripts.
thomasneff.github.io (JavaScript)
My resume/portfolio.
VulkanTutorial-Implementation (C)
My implementation / progress through the Vulkan tutorial at https://vulkan-tutorial.com/
WerewolfWebApp (JavaScript)
An automatic web app for the "Werewolf" social game.
WGAN-GP-for-Supervised-Image-Segmentation (Python)
YGOLOTDPatchDraft (C#)
Patching Tool for Yu-Gi-Oh: Legacy of the Duelist to automatically change the Battle Pack 1 draft pool and AI decks.
YGOPRODraft (C#)
Simple Draft Client/Server Application for the YGOPRO dueling simulator.

Game Development

CoreWars

Procedurally generated Roguelike set in an engineering environment using Unity.

Greeney's Run

Colorful endless runner written in C for the Pebble Smartwatch.


Super 1x1

Educational platformer with the intent to teach simple mathematics written in Objective C.

TileGame v3

Third iteration of TileGame, also written in C#. Has metroidvania-style rooms and powerups to progress.

TileGame v2

Second iteration of TileGame, also written in C#. Has scrolling levels, level editor, and better physics.

TileGame v1

My first 2D platformer project, written in C#.

Music

I love listening to music (mostly progressive metal and video game music) as well as composing own songs. I've been playing the guitar for a long time now, and I'm familiar with basic Audio Engineering and production methods. Guitars:

Schecter BlackJack ATX C-1 ABS
Ibanez RGA7

Monitors:

Yamaha HS7
Audio-Technica ATH-M50 Headphones

Interface:

Focusrite Scarlett 2i2

Get In Touch

Graz, Austria

thomasneff93@gmail.com